package com.mtiiot.fscore.utils;

import java.math.BigDecimal;
import java.util.UUID;

/**
 * Created by lcy on 16-5-27.
 */
public class StringUtil {
    /**
     * 字符串是否为空或者null
     * @param str
     * @return
     */
    public static boolean isEmpty(String str){
        if(str==null){
            return true;
        }
        if(str.equals("")){
            return true;
        }
        return false;
    }

    /**
     * 字符串是否含有下划线
     * @param str
     * @return
     */
    public static boolean stringHasUnderline(String str){
        if(isEmpty(str)){
            return false;
        }
        if(str.indexOf("_")!=-1){
            return true;
        }
        return false;
    }


    public static String getUUID(){
        String uuid = UUID.randomUUID().toString().trim().replaceAll("-", "");
        return uuid;
    }

    /**
     * byte(字节)根据长度转成kb(千字节)
     * 和mb(兆字节)
     *
     * @param bytes
     * @return
     */
    public static float bytes2kbFloat(long bytes) {
        BigDecimal filesize = new BigDecimal(bytes);
//        BigDecimal megabyte = new BigDecimal(1024 * 1024);
//        float returnValue = filesize.divide(megabyte, 1, BigDecimal.ROUND_UP)
//                .floatValue();
//        if (returnValue > 1)
//            return (returnValue + "MB");
        BigDecimal kilobyte = new BigDecimal(1024);
        float returnValue = filesize.divide(kilobyte, 1, BigDecimal.ROUND_UP)
                .floatValue();
        return returnValue;
    }

    /**
     * byte(字节)根据长度转成kb(千字节)
     * 和mb(兆字节)
     *
     * @param bytes
     * @return
     */
    public static Double bytes2kbDouble(long bytes) {
        BigDecimal filesize = new BigDecimal(bytes);
//        BigDecimal megabyte = new BigDecimal(1024 * 1024);
//        float returnValue = filesize.divide(megabyte, 1, BigDecimal.ROUND_UP)
//                .floatValue();
//        if (returnValue > 1)
//            return (returnValue + "MB");
        BigDecimal kilobyte = new BigDecimal(1024);
        Double returnValue = filesize.divide(kilobyte, 1, BigDecimal.ROUND_UP).doubleValue();
        return returnValue;
    }
}
